home *** CD-ROM | disk | FTP | other *** search
/ The 640 MEG Shareware Studio 2 / The 640 Meg Shareware Studio CD-ROM Volume II (Data Express)(1993).ISO / mailers / binkla20.zip / BKLACONN.BAS < prev    next >
BASIC Source File  |  1992-02-19  |  5KB  |  133 lines

  1.     DEFINT A-Z
  2.     DECLARE FUNCTION FUsing$ (Num$, Image$)             'PDQ use
  3.   '       Program: BKLAConn
  4.   '        Author: RJ (Bob) Ross - FidoNet 1:134/75
  5.   '  Date Started: January 28th, 1992
  6.   ' Date Finished: February 2nd, 1992
  7.   '       Purpose: To tabulate the percentage of outgoing call
  8.   '                connects.
  9.   '
  10.   '          Note: BinkLA must be run with the -D switch to create
  11.   '                BKLARpt.Dat file. BKLARpt.Txt must be available
  12.   '                to extract the report heading information.
  13.   '
  14.   '                BKLAConn was compiled using QuickBASIC 4.5 and linked
  15.   '                using Crescent's PDQ library to reduce the exe size.
  16.   '                The program may be linked with QuickBASIC's Link program.
  17.   '                See the remarks in the program where modification is
  18.   '                required for this.
  19.  
  20.   ' BKLARpt.Dat Variable declaractions
  21.   '-----------------------------------
  22.     DIM ZoneNetNode AS STRING * 15
  23.     DIM CallsOut AS INTEGER
  24.     DIM Connect AS INTEGER
  25.     DIM CallsIn AS INTEGER
  26.     DIM MByteOut AS LONG
  27.     DIM MByteIn AS LONG
  28.     DIM MTimeOut AS INTEGER
  29.     DIM MTimeIn AS INTEGER
  30.     DIM MByteOutIn AS LONG
  31.     DIM MTimeOutIn AS LONG
  32.     DIM MAvgCPS AS INTEGER
  33.     DIM MTimeMinute AS SINGLE
  34.  
  35.     DIM RptHeading$(1 TO 6)
  36.  
  37.     ON ERROR GOTO Drats                         'global error trap
  38.     OPEN "BKLARpt.Txt" FOR INPUT AS #1          'for report heading
  39.     OPEN "BKLARpt.Dat" FOR INPUT AS #2          'Input file
  40.     OPEN "BKLAConn.Txt" FOR OUTPUT AS #3        'Output file
  41.  
  42.     FOR X% = 1 TO 6
  43.         LINE INPUT #1, RptHeading$(X%)
  44.         PRINT #3, RptHeading$(X%)
  45.     NEXT
  46.     CLOSE (1)
  47.  
  48.   'Column Headings
  49.   '---------------
  50.     PRINT #3, SPACE$(9); "┌"; STRING$(57, "─"); "┐"
  51.     PRINT #3, SPACE$(9); "│ ▓▓▓▓▓▓▓▓▓▓  Percentage of Outgoing Connects  ▓▓▓▓▓▓▓▓▓▓ │"
  52.     PRINT #3, SPACE$(9); "╞"; STRING$(57, "═"); "╡"
  53.     PRINT #3, SPACE$(9); "│ Node             │  Calls Out  │  Connect";
  54.     PRINT #3, "  │  Connect % │"
  55.     PRINT #3, SPACE$(9); "├"; STRING$(57, "─"); "┤"
  56.  
  57.     DO UNTIL EOF(2)
  58.       'Get data from BKLARpt.Dat
  59.       '-------------------------
  60.         INPUT #2, ZoneNetNode, CallsOut, Connect, CallsIn
  61.         INPUT #2, MByteOut, MByteIn, MTimeOut, MTimeIn
  62.         INPUT #2, MByteOutIn, MTimeOutIn, MAvgCPS, MTimeMinute
  63.  
  64.         TotCallsOut& = TotCallsOut& + CallsOut
  65.         TotConnect& = TotConnect& + (Connect - CallsIn)
  66.                  
  67.         OutPerCent! = 0
  68.  
  69.         IF CallsOut > 0 AND Connect > 0 THEN
  70.             OutPerCent! = (Connect - CallsIn) / CallsOut * 100
  71.         END IF
  72.       'Output detail lines to BKLAConn.Txt
  73.       '-----------------------------------
  74.         IF CallsOut = 0 THEN
  75.           'Do Nothing
  76.         ELSE
  77.  
  78.           'QuickBasic or QBasic Specific Code
  79.           '----------------------------------
  80.           ' PRINT #3, SPACE$(9); "│ "; ZoneNetNode; SPACE$(7);
  81.           ' PRINT #3, USING "####"; CallsOut;
  82.           ' PRINT #3, SPACE$(8);
  83.           ' PRINT #3, USING "####"; Connect - CallsIn;
  84.           ' PRINT #3, SPACE$(10);
  85.           ' PRINT #3, USING "###.#"; OutPerCent!;
  86.           ' PRINT #3, TAB(68); "│"
  87.  
  88.           'PDQ Specific Code
  89.           '-----------------
  90.             CallsOutPDQ$ = FUsing$(STR$(CallsOut), "####")
  91.             ConnInPDQ$ = FUsing$(STR$(Connect - CallsIn), "####")
  92.             OutPerCentPDQ$ = FUsing$(STR$(OutPerCent!), "###.#")
  93.             PRINT #3, SPACE$(9); "│ "; ZoneNetNode; SPACE$(7);
  94.             PRINT #3, CallsOutPDQ$; SPACE$(8); ConnInPDQ$; SPACE$(10);
  95.             PRINT #3, OutPerCentPDQ$; TAB(68); "│"
  96.  
  97.         END IF
  98.     LOOP
  99.   'Summarize
  100.   '---------
  101.   'QuickBasic or QBasic specific code
  102.   '----------------------------------
  103.   ' PRINT #3, SPACE$(9); "├"; STRING$(57, "─"); "┤"
  104.   ' PRINT #3, SPACE$(9); "│   TOTAL"; SPACE$(14);
  105.   ' PRINT #3, USING "#####"; TotCallsOut&;
  106.   ' PRINT #3, SPACE$(7);
  107.   ' PRINT #3, USING "#####"; TotConnect&;
  108.   ' PRINT #3, SPACE$(10);
  109.   ' PRINT #3, USING "###.#"; (TotConnect& / TotCallsOut&) * 100;
  110.   ' PRINT #3, TAB(68); "│"
  111.   ' PRINT #3, SPACE$(9); "╘"; STRING$(57, "═"); "╛"
  112.  
  113.   'PDQ specific code
  114.   '-----------------
  115.     TotCallsOutPDQ$ = FUsing$(STR$(TotCallsOut&), "#####")
  116.     TotConnectPDQ$ = FUsing$(STR$(TotConnect&), "#####")
  117.     TotCPerCentPDQ$ = FUsing$(STR$((TotConnect& / TotCallsOut&) * 100), "###.#")
  118.     PRINT #3, SPACE$(9); "├"; STRING$(57, "─"); "┤"
  119.     PRINT #3, SPACE$(9); "│   TOTAL"; SPACE$(14);
  120.     PRINT #3, TotCallsOutPDQ$; SPACE$(7); TotConnectPDQ$; SPACE$(10);
  121.     PRINT #3, TotCPerCentPDQ$;
  122.     PRINT #3, TAB(68); "│"
  123.     PRINT #3, SPACE$(9); "╘"; STRING$(57, "═"); "╛"
  124.  
  125.     CLOSE
  126.     PRINT "BKLAConn.Txt - Done"
  127.     SYSTEM
  128. Drats:
  129.     BEEP: PRINT "Program Failed!"
  130.     CLOSE : SYSTEM
  131.  
  132.  
  133.